Release management

The release management process is a relatively new but rapidly growing discipline within software engineering of managing software releases.

As software systems, software development processes, and resources become more distributed, they invariably become more specialized and complex. Furthermore, software products (especially web applications) are typically in an ongoing cycle of development, testing, and release. Add to this an evolution and growing complexity of the platforms on which these systems run, and it becomes clear there are a lot of moving pieces that must fit together seamlessly to guarantee the success and long-term value of a product or project.

The need therefore exists for dedicated resources to oversee the integration and flow of development, testing, deployment, and support of these systems. Although project managers have done this in the past, they generally are more concerned with high-level, "grand design" aspects of a project or application, and so often do not have time to oversee some of the more technical or day-to-day aspects. Release managers (aka "RMs") address this need. They must have a general knowledge of every aspect of the software development process, various applicable operating systems and software application or platforms, as well as various business functions and perspectives.

A release manager is:

Some of the challenges facing a software release manager include the management of:

Contents

Impact of agile software development on release management

Agile software development methodologies have driven radically higher numbers of release events in organizations where it has been adopted. More release events have corresponded to increased pressure on release management teams and their colleagues in IT Operations to track and execute complex application release processes. Operations teams have used methodologies—such as Information Technology Infrastructure Library ITIL v3 Book: Service Transition (which contains a section on release management) to improve their release management capabilities as they relate to both business applications and internal IT services. Agile has also driven development and operations teams to collaborate more closely during production release events—this trend is referred to as DevOps.

See also

References

  • Beck, B., Fowler, M. (2000). Planning Extreme programming, Addison Wesley.
  • Erenkrantz, J. R.(2003) Release Management Within Open Source Projects. In: Proceedings of the 3rd Open Source Software DevelopmentWorkshop. Portland, Oregon, USA, May 2003, S. 51–55.
  • Hoek, A. van der, Hall, R. S., Heimbigner D., Wolf, A. L. (1997) Software release management, Proceedings of the 6th European conference held jointly with the 5th ACM SIGSOFT international symposium on Foundations of software engineering, p.159–175, September 22–25, Zurich, Switzerland.
  • Hoek, A. van der, Wolf, A. L. (2003) Software release management for component-based software. Software—Practice & Experience. Vol. 33, Issue 1, pp. 77–98. John Wiley & Sons, Inc. New York, NY, USA.
  • Humble, J., Farley, D. (2010). Continuous Delivery, Addison Wesley.
  • Krishnan M. S., (1994). Software release management: a business perspective, Proceedings of the 1994 conference of the Centre for Advanced Studies on Collaborative research, p.36, October 31–November 3, 1994, Toronto, Ontario, Canada

External links